home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 7: Sunsite / Linux Cubed Series 7 - Sunsite Vol 1.iso / system / network / file-tra / rdist-6.1 / rdist-6 / rdist-6.1.0-linuxpl2 / config / os-unicos.h < prev    next >
Encoding:
C/C++ Source or Header  |  1994-03-31  |  4.2 KB  |  166 lines

  1. /*
  2.  * Copyright (c) 1993 Michael A. Cooper
  3.  * Copyright (c) 1993 Regents of the University of California.
  4.  * All rights reserved.
  5.  *
  6.  * Redistribution and use in source and binary forms, with or without
  7.  * modification, are permitted provided that the following conditions
  8.  * are met:
  9.  * 1. Redistributions of source code must retain the above copyright
  10.  *    notice, this list of conditions and the following disclaimer.
  11.  * 2. Redistributions in binary form must reproduce the above copyright
  12.  *    notice, this list of conditions and the following disclaimer in the
  13.  *    documentation and/or other materials provided with the distribution.
  14.  * 3. All advertising materials mentioning features or use of this software
  15.  *    must display the following acknowledgement:
  16.  *    This product includes software developed by the University of
  17.  *    California, Berkeley and its contributors.
  18.  * 4. Neither the name of the University nor the names of its contributors
  19.  *    may be used to endorse or promote products derived from this software
  20.  *    without specific prior written permission.
  21.  *
  22.  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  23.  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  24.  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  25.  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  26.  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  27.  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  28.  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  29.  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  30.  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  31.  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  32.  * SUCH DAMAGE.
  33.  */
  34.  
  35. /*
  36.  * $Id: os-unicos.h,v 6.3 1994/03/31 02:51:42 mcooper Exp $
  37.  * @(#)os-unicos.h
  38.  */
  39.  
  40. /*
  41.  * Unicos
  42.  */
  43.  
  44. /*
  45.  * Define the following name for use in #ifdef's.
  46.  * The value should be all upper-case with no periods (.).
  47.  */
  48. #if    !defined(UNICOS)
  49. #define UNICOS
  50. #endif
  51.  
  52. /*
  53.  * Set process args to messages that show up when running ps(1)
  54.  *
  55.  * Under some OS's, the SETARGS code will cause ": is not an identifier"
  56.  * errors for "special" commands.
  57.  */
  58. #define SETARGS
  59.  
  60. /*
  61.  * Define the type of directory routines your system has.
  62.  */
  63. #define DIR_TYPE    DIR_DIRENT
  64.  
  65. /*
  66.  * Determine what routines we have to get filesystem info.
  67.  */
  68. #define FSI_TYPE    FSI_GETMNTENT2
  69.  
  70. /*
  71.  * Type of non-blocking I/O.
  72.  */
  73. #define NBIO_TYPE    NBIO_FCNTL
  74.  
  75. /*
  76.  * Type of wait() function to use.
  77.  */
  78. #define WAIT_TYPE    WAIT_WAITPID
  79.  
  80. /*
  81.  * Type of argument passed to wait() (above).
  82.  */
  83. #define WAIT_ARG_TYPE    int
  84.  
  85. /*
  86.  * Select the type of executable file format.
  87.  */
  88. #define EXE_TYPE    EXE_AOUT
  89.  
  90. /*
  91.  * Select the type of statfs() system call (if any).
  92.  */
  93. #define STATFS_TYPE    STATFS_SYSV
  94.  
  95. /*
  96.  * Type of arg functions we have.
  97.  */
  98. #define ARG_TYPE    ARG_VARARGS
  99.  
  100. /*
  101.  * System V compatibility
  102.  */
  103. #include <string.h>
  104.  
  105. #define bcopy(a,b,c)     memcpy(b,a,c)
  106. #define bzero(a,b)     memset(a,0,b)
  107. #define setlinebuf(a)    setvbuf(a, NULL, _IOLBF, BUFSIZ)
  108.  
  109. /*
  110.  * UID argument type for chown()
  111.  */
  112. typedef int CHOWN_UID_T;
  113.  
  114. /*
  115.  * GID argument type for chown()
  116.  */
  117. typedef int CHOWN_GID_T;
  118.  
  119. /*
  120.  * Our types
  121.  */
  122. typedef long UID_T;    /* Must be signed */
  123. typedef long GID_T;    /* Must be signed */
  124.  
  125. #define MAXPATHLEN    PATH_MAX
  126. #define N_BADMAG    BADMAG
  127.  
  128. #define mnt_special    mt_filsys
  129. #define mnt_fstype    mt_fstyp
  130. #define mnt_mntopts    mt_mntopts
  131. #define mnt_mountp    mt_dev
  132. #define target        utarget
  133.  
  134. /*
  135.  * Generic pointer, used by memcpy, malloc, etc.  Usually char or void.
  136.  */
  137. typedef void POINTER;
  138.  
  139. /*
  140.  * Type of set file time function available
  141.  */
  142. #define SETFTIME_TYPE   SETFTIME_UTIMES
  143.  
  144. /*
  145.  * Things we have
  146.  */
  147. #define HAVE_FCHOWN            /* Have fchown() */
  148. #define HAVE_FCHMOD            /* Have fchmod() */
  149. #define HAVE_SELECT            /* Have select() */
  150. /*#define HAVE_SAVED_IDS        /* Have POSIX style saved [ug]id's */
  151. #ifndef POSIX_SIGNALS
  152. #define POSIX_SIGNALS            /* Have POSIX signals */
  153. #endif
  154.  
  155. /*
  156.  * Things we need
  157.  */
  158. #define NEED_UNISTD_H            /* Need <unistd.h> */
  159. #define NEED_FCNTL_H            /* Need <fcntl.h> */
  160.  
  161. /*
  162.  * Miscellaneous
  163.  */
  164. #define MNTENT_H    <mntent.h>    /* Name of mntent.h include file */
  165. #define MNTTAB_H    <mnttab.h>    /* Name of mnttab.h include file */
  166.